package com.uaf.vxalipaybill.provider.utils;

import java.io.IOException;

import net.lingala.zip4j.ZipFile;

/**
 * @filename ZipUtils.java
 * @description 解压文件
 * @author 马庆智
 * @date 2021/9/15 11:06
 */
public class ZipUtils {

	/**
	 * 功能描述 解压压缩包
	 * @param zipFilePath 待解压的压缩包绝对路径
	 * @param unzipCatalog 解压后的目录
	 * @author 马庆智
	 * @date 2021/9/9 15:14
	 */
	public static void unzipAll(String zipFilePath, String unzipCatalog) throws Exception {
		new ZipFile(zipFilePath).extractAll(unzipCatalog);
	}

	/**
	 * 功能描述  解压带密码的压缩包
	 * @param zipFilePath  待解压的压缩包绝对路径
	 * @param unzipCatalog 解压后的目录
	 * @param password     压缩包密码
	 * @author 马庆智
	 * @date 2021/9/9 15:15
	 */
	public static boolean unzipAll(String zipFilePath, String unzipCatalog, String password) {
		ZipFile zipFile = null;
		try {
			zipFile = new ZipFile(zipFilePath, password.toCharArray());
			zipFile.extractAll(unzipCatalog);
			return true;
		} catch (Exception ex) {
			return false;
		} finally {
			try {
				zipFile.close();
			} catch (IOException e) {
				return false;
			}
		}

	}

}

